GetPromiseValue
TheGetPromiseValue
method reads promise data from the specified value of the focused property.
ODULong GetPromiseValue (in ODValueType valueType, in ODULong offset, in ODULong length, out ODByteArray value, out ODPart sourcePart);
valueType
- The type of the value from which the promise data is to be read.
offset
- The offset from which the promise data is to be retrieved, expressed as an unsigned 32-bit number of bytes from the beginning of the value.
length
- The length (in bytes) of the data to be retrieved, expressed as an unsigned 32-bit value.
value
- A byte array structure to contain the retrieved promise data.
sourcePart
- A reference to the part that made the promise.
- return value
- The number of bytes read, expressed as an unsigned 32-bit value.
DISCUSSION
You call this method to read promise data without fulfilling the promise. This method first focuses the storage unit on the specified value of the focused property. It then starts reading data at the specified offset and stops after reading the number of bytes specified by thelength
parameter or after reaching the end of the data in the focused value, whichever comes first.When you call this method, the
_buffer
field of thevalue
output parameter should bekODNULL
; if it isn't, the buffer to which that field points will not be deallocated.This method sets the
_buffer
field of thevalue
output parameter to point to a memory block containing the promise data, the_maximum
field to the specified length, and the_length
field to the number of bytes actually read.This method sets the
sourcePart
output parameter to a reference to the part that made the promise. This method does not increment the reference count of the part that made the promise.When you no longer need the structure you pass as the
value
parameter, you should deallocate that structure and its buffer.EXCEPTIONS
If the storage-unit cursor for this storage-unit view does not represent a legal focus context for the storage unit that created this storage-unit view, this method throws exceptions raised by the
kODErrInvalidValueType
- The specified value type is improperly formed or illegal.
kODErrSUValueDoesNotExist
- The focused property does not have a value with the specified value type.
kODErrUnfocusedStorageUnit
- The focus context of this storage-unit view is not a property or a value.
FocusWithCursor
method of that storage unit.SEE ALSO
TheODByteArray
type (page 877).
TheODValueType
type (page 904).
TheODStorageUnitView::IsPromiseValue
method (page 750).
TheODStorageUnitView::SetPromiseValue
method (page 757).
Main | Page One | What's New | Apple Computer, Inc. | Find It | Contact Us | Help